// 用户管理相关的类型定义

// 基础响应类型
export interface BaseResponse {
  code: number
  message: string
}

// 用户信息类型
export interface UserInfo {
  id: number
  username: string
  nickname: string
  email?: string
  phone?: string
  avatar?: string
  roleId: number
  roleName: string
  status: number // 0-禁用 1-启用
  createTime: string
  updateTime: string
}

// 用户搜索参数
export interface UserSearchParams {
  page: number
  limit: number
  keyword?: string
  roleId?: number
  status?: number
  startTime?: string
  endTime?: string
}

// 用户列表响应
export interface UserListResponse extends BaseResponse {
  data: {
    list: UserInfo[]
    total: number
    page: number
    limit: number
  }
}

// 用户表单数据
export interface UserFormData {
  username: string
  nickname: string
  password: string
  email?: string
  phone?: string
  roleId: number
  status: number
}

// 角色信息类型
export interface RoleInfo {
  id: number
  name: string
  description?: string
  status: number
}

// 角色列表响应
export interface RoleListResponse extends BaseResponse {
  data: RoleInfo[]
}

// 批量删除参数
export interface BatchDeleteParams {
  ids: number[]
}

// 通用操作响应
export interface CommonResponse extends BaseResponse {
  data?: any
}
